#include "hal_gpio.h"

struct hal_gpio_if *gpio_if = &g_hdl_gpio_if;

int8_t hal_gpio_cfg(GPIO_Type *base, uint32_t pin, hal_gpio_StructInit *config)
{
	return gpio_if->gpio_init(base,pin,config);
}

int8_t hal_gpio_write(GPIO_Type *base, uint32_t pin, HAL_GPIO_TYPEDEF value)
{
	return gpio_if->gpio_write(base,pin,value);
}

HAL_GPIO_TYPEDEF hal_gpio_read(GPIO_Type *base, uint32_t pin)
{
	return gpio_if->gpio_read(base,pin);
}

int8_t hal_gpio_int_enable(GPIO_Type* base, unsigned int pin)
{ 
    return gpio_if->gpio_int_enable(base,pin);
}

int8_t hal_gpio_int_disable(GPIO_Type* base, unsigned int pin)
{ 
    return gpio_if->gpio_int_disable(base,pin);
}

int8_t hal_gpio_int_clr(GPIO_Type* base, unsigned int pin)
{
    return gpio_if->gpio_int_clr(base,pin);
}
